package com.kirk.cts.core.base.pagination;

import java.util.List;

/**
 * <p> PersistService.java </p>
 *
 * @version 1.0.0
 * @Author kirkliu
 * @Date 2020-09-01 22:53
 * @Description 持久层服务实现代表类接口
 */
public interface PersistService {
    /**
     * 通过SQLMAP插入数据
     */
    int insertBySqlMap(String sqlId, final Object parameterObject);

    /**
     * 修改
     */
    int updateBySqlMap(String sqlId, final Object parameterObject);

    /**
     * 删除
     */
    int deleteBySqlMap(String sqlId, final Object parameterObject);

    /**
     * 查询
     */
    Object findObjectBySqlMap(String sqlId, final Object parameterObject);

    /**
     * 查询列表
     */
    List<?> findListBySqlMap(String sqlId, final Object parameterObject);

    /**
     * 查询分页列表
     */
    PaginationSupport<?> findPaginatedListBySqlMap(String sqlId, final Object parameterObject, int offset, int limit);

}
